package com.ctshk.rpc.air.service;


import com.ctshk.common.dto.Result;
import com.ctshk.common.model.PageResponse;
import com.ctshk.common.model.TokenUser;
import com.ctshk.rpc.air.dto.AirFlightDataDto;
import com.ctshk.rpc.air.req.AirFlightAddReq;
import com.ctshk.rpc.air.req.AirFlightListReq;
import com.ctshk.rpc.air.req.AirFlightQueryReq;
import com.ctshk.rpc.air.req.AirFlightUpdateReq;

import java.util.List;

/**
 * <p>
 * 航班表 服务类
 * </p>
 *
 * @author lihang
 * @since 2021-03-04
 */
public interface IAirFlightService  {


    /**
     * 新增航班信息
     * @param req
     * @return
     */
    Result  add(AirFlightAddReq req, TokenUser tokenUser);

    /**
     * 获取航班详情
     * @param req
     * @return
     */
    Result<AirFlightDataDto>  query(AirFlightQueryReq req);

    /**
     * 获取航班信息列表 分页
     * @param req
     * @return
     */
    PageResponse<AirFlightDataDto> list(AirFlightListReq req);

    /**
     * 编辑航班信息里列表
     * @param req
     * @return
     */
    Result  edit(AirFlightUpdateReq req, TokenUser tokenUser);

    /**
     * 修改航班信息状态
     * @param req
     * @return
     */
    Result editStatus(AirFlightUpdateReq req, TokenUser tokenUser);

    List<AirFlightDataDto>  listByIds(List<Long> ids);

}
